An absolute positioning of a device is supported by various Global Navigation Satellite Systems (GNSS). These include for example the American Global Positioning System (GPS), the Russian Global Navigation Satellite System (GLONASS), the future European system Galileo, the Space Based Augmentation Systems (SBAS), the Japanese GPS augmentation Quasi-Zenith Satellite System (QZSS), the Locals Area Augmentation Systems (LAAS), and hybrid systems. The satellites of these systems are also referred to as space vehicles (SV).
The constellation in GPS, for example, consists of more than 20 satellites that orbit the earth. Each of the satellites transmits two carrier signals L1 and L2. One of these carrier signals L1 is employed for carrying a navigation message and code signals of a standard positioning service (SPS). The L1 carrier phase is modulated by each satellite with a different C/A (Coarse Acquisition) code. Thus, different channels are obtained for the transmission by the different satellites. The C/A code is a pseudo random noise (PRN) code, which is spreading the spectrum over a 1 MHz bandwidth. It is repeated every 1023 bits, the epoch of the code being 1 ms. The carrier frequency of the L1 signal is further modulated with navigation information at a bit rate of 50 bit/s. The navigation information comprises inter alia ephemeris and almanac parameters. Ephemeris parameters describe short sections of the orbit of the respective satellite. Based on these ephemeris parameters, an algorithm can estimate the position of the satellite for any time while the satellite is in the respective described section. The almanac parameters are similar, but coarser orbit parameters, which are valid for a longer time than the ephemeris parameters. The navigation information further comprises for example clock models that relate the satellite time to the system time of GPS and the system time to the Coordinated Universal Time (UTC).
A GPS receiver of which the position is to be determined receives the signals transmitted by the currently available satellites, and it detects and tracks the channels used by different satellites based on the different comprised C/A codes. Then, the receiver determines the time of transmission of the code transmitted by each satellite, usually based on data in the decoded navigation messages and on counts of epochs and chips of the C/A codes. The time of transmission and the measured time of arrival of a signal at the receiver allow determining the pseudorange between the satellite and the receiver. The term pseudorange denotes the geometric distance between the satellite and the receiver, which distance is biased by unknown satellite and receiver offsets from the GPS system time.
In one possible solution scheme, the offset between the satellite and system clocks is assumed known and the problem reduces to solving a non-linear set of equations of four unknowns (3 receiver position coordinates and the offset between the receiver and GPS system clocks). Therefore, at least 4 measurements are required in order to be able to solve the set of equations. The outcome of the process is the receiver position.
Similarly, it is the general idea of GNSS positioning to receive satellite signals at a receiver which is to be positioned, to measure the pseudorange between the receiver and the respective satellite and further the current position of the receiver, making use in addition of estimated positions of the satellites. Usually, a PRN signal which has been used for modulating a carrier signal is evaluated for positioning, as described above for GPS.
In a further approach, the carrier phases and/or the code phases measured at two GNSS receivers are evaluated for determining the distance and attitude between the two receivers very accurately, typically at cm- or even mm-level accuracy. The combination of the distance and attitude between two receivers, and thus the vector between these receivers, is also referred to as baseline. The carrier phase measurements that are performed at GNSS receivers may be exchanged in real-time or be stored for a later exchange known as post-processing. Usually, one of the GNSS receivers is arranged at a known location and called reference receiver, while the other receiver is to be positioned with respect to the reference receiver and called user receiver or rover. The determined relative position can further be converted into an absolute position, if the location of the reference position is accurately known. However, the relative positioning calculations actually require that the positions of both receivers are known at least approximately. These positions can be obtained from determined pseudoranges. Alternatively, it would also be sufficient to know only a reference location approximately, since the rover location can be obtained therefrom by adding the baseline estimate to the reference location.
A satellite signal is distorted on its way from a satellite to a receiver due to, for instance, multipath propagation and due to influences by ionosphere and troposphere. Moreover, the satellite signal has a bias due to the satellite clock bias. All errors that are common to a signal in both receivers can be assumed to correlate between the receivers and satellites, and thus to vanish in double differencing.
The relative positioning may thus be based more specifically on signal measurements at two GNSS receivers, which are used to form double difference observables. Such signal measurements may include for example carrier phase measurements and PRN code measurements, etc. A double difference observable relating to the carrier phase is the difference in the carrier phase of a specific satellite signal at both receivers compared to the difference in the carrier phase of another satellite signal at both receivers. A double difference observable relating to the PRN code may be obtained correspondingly. The double difference observables can then be employed for determining the position of the receivers relative to each other at high accuracy.
With conventional GNSS positioning, two GNSS receivers are able to determine their location, and therefore the baseline between them, with an accuracy of 5 to 20 meters. The carrier or code phase based approach, in contrast, allows determining the baseline with a much higher accuracy of 0.1 to 10 cm. It is noteworthy that this accuracy can be achieved with standard commercial GNSS-receivers.
When using the carrier or code phase based approach, however, it has to be considered that a carrier or code phase measured at two receivers is based on different number of whole cycles of the carrier. This effect is referred to as double-difference integer ambiguity, which has to be solved. This process is also called integer ambiguity resolution or initialization.
The double-difference integer ambiguity may be resolved by gathering carrier and/or code phase data from a sufficient number of satellites at sufficient measurement instants.
Once the baseline has been determined and the integer ambiguity been resolved, the integer ambiguity solution may be validated in order to determine whether it can be relied on. Integer ambiguity validation is typically done using statistical tools.
The solved and validated integer ambiguities may then be used for tracking the baseline between the receivers at high precision, for instance with a sub-cm accuracy.
The carrier phase measurement performed by a GNSS receiver on a GNSS signal originating from a GNSS SV is also called ‘accumulated delta range (ADR) measurement’ or ‘integrated Doppler measurement’.
Originally, carrier phase based positioning was only available for geodesic surveying and other applications requiring a high accuracy. The equipment required for such applications is expensive and meant, therefore, only for professional use. In these cases, the baseline is moreover often determined off-line. However, it is also possible to obtain a high-precision baseline using two low-cost GNSS-enabled handsets, for example terminals with integrated GNSS-receiver or terminals equipped with an external Bluetooth GNSS-receiver. The data between the terminals can be exchanged using any kind of data transfer technology, like general packet radio service (GPRS), wireless local area networks (WLAN) or Bluetooth™. This allows the baseline to be determined and updated in real-time. This approach is also called mobile Real-Time Kinematics (mRTK), indicating that mobile technology is used to expand the carrier-phase based use cases and bring the benefits of the technology to a wider audience. Instead of a second handset, the reference receiver could also be for instance a location measurement unit (LMU) of a network or a virtual reference station (VRS) for which the required measurement data is provided.